// 商品分类全局组件小仓库
import { defineStore } from "pinia";
import { reqC1, reqC2, reqC3 } from "@/api/product/attr";
import type {
  CategoryResponseData,
  CategoryState,
} from "@/api/product/attr/type";
const useCategoryStore = defineStore("Category", {
  state: (): CategoryState => {
    return {
      // 存储一级分类的数据
      c1Arr: [],
      // 存储一级分类的id
      c1Id: "",

      c2Arr: [],

      c2Id: "",

      c3Arr: [],

      c3Id: "",
    };
  },
  actions: {
    // 获取一级分类
    async getC1() {
      // 发送请求
      const res: CategoryResponseData = await reqC1();
      if (res.code === 200) {
        this.c1Arr = res.data;
      }
    },
    // 获取二级分类
    async getC2() {
      const res: CategoryResponseData = await reqC2(this.c1Id as number);
      if (res.code === 200) {
        this.c2Arr = res.data;
      }
    },

    // 获取三级分类
    async getC3() {
      const res: CategoryResponseData = await reqC3(this.c2Id as number);
      if (res.code === 200) {
        this.c3Arr = res.data;
      }
    },
  },
});

export default useCategoryStore;
